package com.sicau.service;

import com.sicau.entity.dto.*;
import com.sicau.entity.pojo.po.ComposerPO;
import com.sicau.entity.pojo.vo.ResultVO;

/**
 * managerController的service
 * @author ttxxi
 */
public interface ManagerService {

    /**
     * 管理员登录
     * @param manager 管理员对象
     * @return ResultVO
     */
    ResultVO login(Manager manager);

    /**
     * 管理员首页
     * @return resultVO
     */
    ResultVO index();

    /**
     * 管理员查看某一个用户的信息
     * @param id 用户id
     * @return
     */
    ResultVO composerInfo(String id);

    /**
     * 管理员创建新的任务
     * @param taskInfo 新任务对象
     * @return
     */
    ResultVO setTask(String option,TaskInfo taskInfo);

    /**
     * 删除从task
     * @param taskId taskId
     * @return
     */
    ResultVO deleteTask(String taskId);

    /**
     * 修改公告内容
     * @param notice 公告的实体类
     * @return
     */
    ResultVO modifyNotice(Notice notice);

    /**
     * 获取用户账号相关信息
     * @return
     */
    ResultVO getComposer();

    /**
     * 获取用户的详细信息以及密码
     * @param id
     * @return
     */
    ResultVO composer(String id);

    /**
     * 新建 或 修改 用户
     * @param option
     * @param composerPO
     * @return
     */
    ResultVO setAccount(String option, ComposerPO composerPO);

    /**
     * 更改密码
     * @param composer
     * @return
     */
    ResultVO changeComposerPassword(Composer composer);

    /**
     * 更改账户状态
     * @param composer
     * @return
     */
    ResultVO changeComposerStatus(Composer composer);

}
